百家乐官网 (中国)有限公司官网

全讯官网论坛首页入口在哪儿下载啊视频教程 (中国)·官方网站

 

開源ERP產(chǎn)品簡介及研發(fā)理念

標題:博開源ERP產(chǎn)品簡介及研發(fā)理念

標簽:開源ERP;零售業(yè);Android開發(fā)者;Java web開發(fā)者;小程序

ERP產(chǎn)品簡介

ERP是什么

ERP是幫助零售門店商家經(jīng)營的ERP軟件,在門店的顧客、員工、商品3者的數(shù)量達到一定程度后應(yīng)用開源博ERP系統(tǒng),能有效減輕商家經(jīng)營負擔、提升顧客滿意度。目前博ERP已開發(fā)出滿足單一門店經(jīng)營需求的產(chǎn)品,我們把該產(chǎn)品稱為博銷寶ProSales Box)。

ERP可以帶給你什么

l  對于Java web開發(fā)者,可以快速照抄博ERPJava后端框架。

l  對于Android開發(fā)者,可以快速照抄一套網(wǎng)絡(luò)請求框架。

l  對于教師和學生,本項目將是你迅速提高教學質(zhì)量、投身真實戰(zhàn)場的二選擇。

l  對于項目經(jīng)理和企業(yè)管理者,可以快速組件一個具備先進開發(fā)流程的團隊。

l  對于零售企業(yè),應(yīng)用開源的博ERP可以低成本、快速、0試錯搭建一個新的商業(yè)軟件系統(tǒng),尤其是N平臺客戶端1服務(wù)器的軟件系統(tǒng),博ERP可以為你節(jié)省大量成本(資金和時間)。

軟件定制開發(fā)業(yè)務(wù)聯(lián)系:

QR 代碼

描述已自動生成

ERP所能滿足的用戶需求

以小型單店為例,通常有如下類型的用戶:顧客、老板、店長、收銀員。其中顧客是核心用戶類型,老板、店長和收銀員均圍繞顧客的購物需求開展經(jīng)營活動。以下為各類型用戶的基本需求:

 圖示

描述已自動生成

根據(jù)用戶需求分析,博研發(fā)團隊定義了如下系統(tǒng)角色:

 

角色

角色說明

會員

即顧客群體當中認可商家,愿意提供手機號碼進行注冊為會員的顧客。

老板

即門店所有權(quán)人。

店長

即負責門店日常運作、處理的各類事項的管理人員。

收銀員

即負責商品過機及收款的人員。

系統(tǒng)操作員(系統(tǒng)OP

即博公司內(nèi)部負責為商家開通及配置博ERP的人員,通常由客戶經(jīng)理擔任。

 

ERP子系統(tǒng)結(jié)構(gòu)及模塊簡介

ERP子系統(tǒng)結(jié)構(gòu):

圖示

描述已自動生成

ERP包含了nbr服務(wù)器端和客戶端。

nbr服務(wù)器包含商家ERP子系統(tǒng)和客戶管理子系統(tǒng)(CMS),它們的模塊組成如圖:

圖示

描述已自動生成

 

用戶客戶端:POS機客戶端(包含安卓應(yīng)用軟件和電腦桌面應(yīng)用軟件)、微信小程序、微信公眾號

圖示

描述已自動生成圖示

描述已自動生成

ERP產(chǎn)品研發(fā)理念

研發(fā)團隊做好事情的原則

2019327日,一個名為“996ICU”的項目在GitHub上傳開,迅速火遍了全網(wǎng)。這一事件揭露出了國內(nèi)程序員的加班現(xiàn)狀,反應(yīng)出了程序員們對這種加班狀況的抗拒心理。2021年下半年,騰訊等互聯(lián)網(wǎng)公司相繼宣布取消996工作制,國內(nèi)程序員是否迎來了不用加班的福音?短時間內(nèi)恐怕還不行,不過這無疑是人心所向,是一種趨勢。那么之前通過加班才能完成的工作,取消996工作制,還能按時按量的完成工作嗎?答案是肯定的,不過需要找出一個科學有效的方法。

我們都知道,程序員加班很多時候并非開發(fā)一些新功能,而是陷入了修bugbug的泥潭中。如果能避免或減少這種情況,那么程序員就能高效率的完成工作。博研發(fā)團隊開發(fā)博ERP時,始終沒有忘記尋找科學有效的方法,讓研發(fā)人員輕松地把事情做好。做好事情是許多團隊的基本要求,但是輕松地做好,幾乎是奢求。我們通過嚴格執(zhí)行以下團隊組織原則達成“輕松地做好事情”的目標:

第一,重復(fù)。其精華體現(xiàn)在以下幾個方面:

l  通過重復(fù)使事情逼近一個完美的狀態(tài),此重復(fù)即迭代。我們認為這是敏捷開發(fā)最大的精華。

l  令重復(fù)的事情不重復(fù)。使用機器來代替人類的重復(fù)勞動,使得人類有精力完成更多的事情。譬如自動化測試可以解放大量的生產(chǎn)力。

l  不能重復(fù)做的事情,想方設(shè)法重復(fù)做(針對事情本身或拆分后的局部,進行多次重復(fù)的仿真),以使真正第一次做時就成功。

l  人類不是禽獸,通過重復(fù)做一件事,必定可以獲得進步。

軟件工程充滿各種重復(fù)。據(jù)說Windows 2000大約有2000萬行代碼,由大約1000位軟件工程師完成。假設(shè)他們事先得到了上帝的指引,編碼完全不需要修改而且沒有bug,那么,按照每人一天1000行代碼的速度,這些工程師20天就可以開發(fā)一個Windows 2000。但是事實上并非如此,Windows 2000開發(fā)周期是三年左右。可見這些工程師花費了大量的時間做了重復(fù)的事情。如果我們在軟件工程里面很好地控制重復(fù)的勞動,那么一定可以輕松地將事情做好。博ERP代碼量大約100萬行,測試用例大概是15000個(大部分是自動化測試),研發(fā)團隊人數(shù)11人(絕大部分是實習生),開發(fā)周期是18個月左右,由于很好地遵循了重復(fù)的原則,加上以下第二點的流程,程序員幾乎不加班,經(jīng)常處于一種精神抖擻、斗志昂揚、活潑有趣的工作氛圍中,工作效率比較高。

 

第二,流程。結(jié)合業(yè)界的先進流程,探索以及不斷優(yōu)化一些適合博研發(fā)團隊的敏捷開發(fā)流程。一個產(chǎn)品從01,和從12,其流程是不同的。我們采用的軟件工程流程如下:

階段

主要活動

軟件產(chǎn)出

服務(wù)器要求

作用

立項

主要論證市場需求和政策需求,即產(chǎn)品研發(fā)的原因。

立項書

 

 

需求分析

BA(商業(yè)洞察者)制作需求規(guī)格說明書。

需求規(guī)格說明書

 

商業(yè)角度看需求

RD(研發(fā)團隊)將業(yè)務(wù)轉(zhuǎn)化為BARD都可以理解的文檔。

功能需求說明書

 

BARD對需求達成一致的理解

設(shè)計

RD將功能需求說明書細化成概要設(shè)計說明書甚至詳細設(shè)計說明書,使得RD在開發(fā)、修改bug、迭代新功能時有據(jù)可依。如果沒有這些文檔,后面的溝通費時費力。

在產(chǎn)品的維護期,一旦有問題出現(xiàn),幾乎無法輕松解決。故一般來說,缺乏本階段的文檔,產(chǎn)品沒有很強的生命力,難以可持續(xù)發(fā)展。維護成本巨大,所有人都很頭痛。

概要設(shè)計說明書、詳細設(shè)計說明書、

測試用例設(shè)計文檔

 

RD內(nèi)部對需求達成一致的理解

編碼和測試

如之前所言,編碼期,會進行手動測試和編寫自動化測試。

敏捷開發(fā)擁抱需求變化,所以在需求變化發(fā)生后,有些功能會回到設(shè)計階段甚至需求階段進行討論。

代碼、測試用例設(shè)計文檔、測試腳本

11臺開發(fā)機器

 

DEV

開發(fā)測試階段。測試單項功能、手動單元測試,每天運行全部自動化測試并發(fā)送問題報告。版本更新非常頻繁。

兼有運行測試、運行產(chǎn)品的服務(wù)器

1臺服務(wù)器

確保單項功能沒有問題

SIT

集成測試階段。測試N項功能同時運行有沒有問題。在DEV階段開發(fā)得到穩(wěn)定的版本后,再部署到本階段的服務(wù)器

運行產(chǎn)品的集成測試服務(wù)器

1臺服務(wù)器

確保集成測試沒有問題

UAT

用戶驗收階段。用戶驗收功能是否正確。

運行產(chǎn)品的用戶驗收服務(wù)器

1臺服務(wù)器

確保用戶滿意

Prod

生產(chǎn)環(huán)境階段。用戶使用。

運行產(chǎn)品的線上服務(wù)器,即生產(chǎn)環(huán)境

1臺服務(wù)器或以上

產(chǎn)出用戶價值

維護期

功能迭代。

 

 

 

 

敏捷開發(fā)方式

針對用戶需求不是所有都明確的、可能發(fā)生改變的,敏捷開發(fā)可以很好地應(yīng)對這種情況。敏捷開發(fā)以用戶的需求進化為核心,采用迭代、循序漸進的方法進行軟件開發(fā)。敏捷開發(fā)屬于增量式開發(fā),在開發(fā)軟件過程中,將軟件分為一個個小的模塊。先開發(fā)主要的模塊,再開發(fā)次要模塊,逐步完善,最終開發(fā)出符合需求的軟件產(chǎn)品。它的最大特點是迭代,能更好的應(yīng)對用戶需求變更較多的情況。

我們特別重視“重復(fù)和流程”,這是我們在開發(fā)過程中總結(jié)出來的,認為做某一類事情的科學方法和步驟。然后不斷的重復(fù)按照這個流程去做類似的事情,結(jié)果我們會越來越熟練,完成事情效率也會越高。開發(fā)人員應(yīng)該也必須按照“重復(fù)和流程”做事情,我們也會不斷的迭代已有的流程,讓團隊受益于新的更有效的做事方法,輕松做好事情。

項目管理工具

JIRAAtlassian公司出品的項目與事務(wù)跟蹤工具,被廣泛應(yīng)用于敏捷管理、需求收集、任務(wù)跟蹤、缺陷跟蹤等工作領(lǐng)域。我們使用它來進行博ERP研發(fā)管理。博團隊研發(fā)人員經(jīng)過討論,制定出一個Sprint沖刺(未來一個短時間段要完成的目標),項目管理人員根據(jù)目標細分任務(wù),在上面創(chuàng)建、分配、追蹤任務(wù)。將項目分為一個一個的Sprint沖刺去完成,能更好的應(yīng)對用戶需求的變化。程序員在分配的任務(wù)上編寫工作計劃、工作總結(jié)。工作計劃就像茫茫大海中的指南針,讓我們不會失去方向,或避免做了撿芝麻丟西瓜的事情。不管遇到好的壞的,我們都應(yīng)該善于做工作總結(jié),好的可以分享給其它隊友,壞的可以提醒自己和他人注意,當下一次做類似事情的時候,勢必會胸有成竹、馬到成功。

軟件工程流程細節(jié)

前面表格介紹了我們采用的軟件工程流程包含了以下階段:立項、需求分析、設(shè)計、編碼和測試、DEVSITUATProd、維護期。在每一個階段,我們都會產(chǎn)出一些文檔。用文檔記錄思考或討論好的事情,讓我們智慧的結(jié)晶得以保存,也有利于后期的迭代完善。沒有文檔,我們就無章可循,像一只無頭蒼蠅亂撞,程序員與產(chǎn)品經(jīng)理打架的悲劇也將不斷重演。

       我們認為,需求分析在整個軟件的開發(fā)周期中占比是最大的,在開發(fā)前期、開發(fā)期和開發(fā)后期都可能不斷的做著需求分析的工作。所以在前期做需求分析的工作越充足,后面改動越少,額外花費的時間也會越少。產(chǎn)品經(jīng)理根據(jù)市場調(diào)研編寫出需求規(guī)格說明書,然后與開發(fā)人員根據(jù)需求規(guī)格說明書,編寫出功能需求文檔,開發(fā)人員最后根據(jù)功能需求說明書編寫出數(shù)據(jù)庫設(shè)計說明書和詳細設(shè)計說明書。

       各個開發(fā)人員的代碼體系不應(yīng)各成一派,不利于后期的維護。在不斷的迭代中,我們也有了自己的一套代碼架構(gòu)。該有的代碼結(jié)構(gòu)不能少,不該有的也不能畫蛇添足。這樣統(tǒng)一代碼架構(gòu)讓隊友間討論彼此代碼的時候能更迅速的了解對方的思路,甚至能指引新員工如何去寫代碼。在編碼階段,我們還會總結(jié)出很多好的做事方法,如怎樣解決bug、如何進行代碼的重構(gòu)等,并記錄到開發(fā)文檔當中。

螞蟻金服擁有30多萬的測試用例,說明他們對測試用例是非常重視的。我們開發(fā)這個產(chǎn)品也是很注重測試的,認為測試用例越豐富、越全面,開發(fā)出來的軟件越穩(wěn)定、越符合需求。開發(fā)人員編寫自動化測試代碼代替重復(fù)的手動測試工作。開發(fā)人員對自己開發(fā)的功能編寫測試用例,測試驅(qū)動開發(fā),編寫功能代碼。寫好功能代碼后,根據(jù)測試用例編寫自動化測試代碼,確保測試通過,保證功能的穩(wěn)定。以上的單元測試我們稱為元粒度測試,除此之外,在不斷地迭代過程我們還會產(chǎn)出以下粒度的測試:

1)細粒度測試:子系統(tǒng)級測試;

2)中粒度測試:跨子系統(tǒng)級測試;

3)大粒度測試測試:用戶接受度測試;

4)在這一階段會產(chǎn)出功能代碼、測試代碼、測試用例文檔。

在一次次的部署中我們發(fā)現(xiàn),將代碼部署到服務(wù)器是一個步驟比較多、比較復(fù)雜的過程,人工去完成這些操作會出現(xiàn)遺忘某些步驟、在某些步驟容易出錯的情況。我們就思考能不能把這些操作交給機器去完成,避免這樣的情況發(fā)生。于是我們應(yīng)用了Jenkins,它是一個持續(xù)集成工具,結(jié)合SVNMAVENpython腳本完成自動化部署,可以提高效率和避免手動部署的出錯。Jenkins還可以很好地結(jié)合TestNG,使用它運行自動化測試代碼、生成測試報告并發(fā)送給開發(fā)人員。Jenkins相關(guān)用例圖如圖所示:

圖示

描述已自動生成

備注:

皇后”Windows服務(wù)和“小王子”是我們自行開發(fā)的工具。“皇后”Windows服務(wù)用來創(chuàng)建數(shù)據(jù)庫,她在接到nbr服務(wù)器創(chuàng)建數(shù)據(jù)庫的請求后開始執(zhí)行任務(wù)。

“小王子”是用來刷新數(shù)據(jù)庫或配合Jenkins任務(wù)啟動tomcat的。

 

 

開源ERP代碼及開發(fā)文檔托管在GitHubhttps://github.com/Boxin-ChinaGD/BXERP

技術(shù)博客:https://www.cnblogs.com/BXERP/

 

© 2014-2022 廣州市博信息技術(shù)有限公司 版權(quán)所有 粵ICP備15067421

澳门百家乐网站 全讯网现金网 葡京赌场 澳门新葡京
赫章县 元江 正宁县 慈溪市 香格里拉县 上虞市
同心县 工布江达县 宁明县 广河县 建昌县 上栗县
吉木乃县 禄丰县 兴安县 武宣县 同心县 普兰店市
桂东县| 大发888在线客服| 利记备用网址| 在线百家乐| 韦博代理平台| 皇冠国际网上赌场| 博盈开户| 网上棋牌游戏赚钱| 肯博百家乐现金网| 娱乐城打鱼机| 赌场会员开户| 真人百家乐赢钱| 水果机规律| 乐中百家乐的玩法技巧和规则| 雅加达娱乐反水| 石台县| 百家乐必胜课| 娱乐论坛| 1910澳门娱乐| 百家乐注码方法| 大连娱网棋牌步步为赢| 冠现金网开户家乐| 开户送彩金的人民币赌博网| e世博官方网站| 百家乐画面方法| 博彩机下载| 威龙国际娱乐正网| 澳门赌场赢钱的诀窍| 博彩现金开户| 墨尔本百家乐的玩法技巧和规则| 乐九娱乐城信誉| 大玩家百家乐的玩法技巧和规则| 大发888最新官方网址| 欢乐谷娱乐城官方| 百家乐电脑上怎么赌| 大发888xp缺少casino| 太阳城娱乐| 888真人官网| 百家乐足球投注网哪个平台网址测速最好 | 金都会娱乐平台| 威尼斯人娱乐场钓鱼网站 |